package com.ruoyi.app.domain.dto

import com.alibaba.fastjson.JSON
import com.ruoyi.util.Face
import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty

@ApiModel("视频换脸参数")
data class VideoChangeFaceDto(

    @ApiModelProperty("替换后的人脸参考图像URL地址")
    var referenceUrl: String? = null,

    @ApiModelProperty("人脸id")
    var faceId: String? = null,

    @ApiModelProperty("视频长度 单位秒 针对于用户自定义上传视频")
    var videoDuration: Int? = 0,

    @ApiModelProperty("多人脸参数 请传递json数组字符串 格式如 [{\"faceId\":\"xxx\",\"imageUrl\":\"xxxx\"},{\"faceId\":\"xxx\",\"imageUrl\":\"xxxx\"}]")
    var faces: String? = null,

    @ApiModelProperty("本地链接 (本地链接和模板id只能传一个, 如果两个都传 优先以模板id为准) 如果传递本地链接 无需传递 人脸id参数")
    var localTemplateUrl: String? = null,

    @ApiModelProperty("模板id (本地链接和模板id只能传一个, 如果两个都传 优先以模板id为准)")
    var templateId: Long? = null,

    @ApiModelProperty("渠道号")
    var channelCode: String? = null,

    @ApiModelProperty("如果单次购买成功传true 其他情况都传false")
    var pay: Boolean? = false,

    @ApiModelProperty(hidden = true)
    var aiWatermark: Boolean? = false,

    @ApiModelProperty(hidden = true)
    var softWatermark: Boolean? = false,

    @ApiModelProperty(hidden = true)
    var hideWatermark: Boolean? = false,
)

fun main() {

    println(JSON.toJSONString(listOf(Face("xxx", "xxxx"), Face("xxx", "xxxx"))))
}
